package bite;

/**
 * Creared with IntelliJ IDEA.
 * Description:【连续最大和】一个数组有 N 个元素，求连续子数组的最大和。 例如：[-1,2,1]，和最大的连续子数组为[2,1]，其和为 3
 * User:yxd
 * Date:2022-03-27
 * Time:21:27
 */
import java.util.*;
public class Day5_2{
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        int n = input.nextInt();
        int[] nums = new int[n];
        for(int i = 0;i < n; i++){
            nums[i] = input.nextInt();
        }
        //状态定义DP[i]前i个数字的最大连续和
        //状态转移方程:DP[i] = Math.max(dp[i - 1] + array[i],array[i])
        //赋初值dp[0] = array[0]
        int sum = nums[0];
        int max_value = nums[0];
        for (int i = 1; i < n; i++) {
            sum = Math.max(sum + nums[i],nums[i]);
            max_value = Math.max(max_value,sum);

        }
        System.out.println(max_value);
        /*int[] dp = new int[n];
        dp[0] = nums[0];
        int count = dp[0];
        for(int i = 1;i < n;i ++){
            dp[i] = Math.max(dp[i - 1] + nums[i],nums[i]);//
            count = Math.max(dp[i],count);
        }
        System.out.println(count);*/
    }
}

